import request from '@/utils/request'


// 查询工单列表
export function listForm(query) {
  return request({
    url: '/dics-repair/repair/list',
    method: 'get',
    params: query
  })
}

// 查询工单详情
export function getForm(id) {
  if (!id) {
    const error = new Error('无效的ID参数');
    console.error('详情请求失败:', error);
    return Promise.reject(error);
  }
  return request({
    url: `/dics-repair/repair/detail/${encodeURIComponent(id)}`,
    method: 'get'
  }).catch(error => {
    console.error('详情请求网络错误:', error, '请求ID:', id);
    // 添加详细的错误分类处理
    if (error.response) {
      console.error('服务器响应错误详情:', {
        status: error.response.status,
        data: error.response.data,
        headers: error.response.headers
      });
    } else if (error.request) {
      console.error('网络请求错误详情:', {
        request: error.request
      });
    } else {
      console.error('其他错误详情:', {
        message: error.message,
        stack: error.stack
      });
    }
  });
}

// 新增工单
export function addForm(data) {
  return request({
    url: '/dics-repair/repair',
    method: 'post',
    data: data
  })
}

// 修改工单
export function updateForm(data) {
  return request({
    url: '/dics-repair/repair',
    method: 'put',
    data: data
  })
}

// 删除工单
export function delForm(ids) {
  return request({
    url: `/dics-repair/repair/${ids}`,
    method: 'delete'
  })
}

// 上传图片
export function uploadImage(file) {
  const formData = new FormData();
  formData.append('file', file);
  return request({
    url: '/dics-repair/repair/upload',
    method: 'post',
    data: formData,
    headers: {
      'Content-Type': 'multipart/form-data'
    }
  })
}

/**
 * 参数名称提示
 * @param paramName
 * @param keyword
 * @returns {AxiosPromise}
 */
export function getParamSuggestions(paramType) {
  return request({
    url: '/dics-repair/repair/suggestions',
    method: 'post',

    data: paramType,
    headers: {
      // 设置请求头，表明发送的是纯文本
      'Content-Type': 'text/plain'
    }
  })
}
